import request from '@/utils/request'
const base = 'system/permission/menu'

/**
 * 查询SysRoleMenu数据列表
 * @param {Object} roleId - 查询参数
 * @returns {Promise} - Axios请求的Promise对象
 */
export function listSysRoleMenu(roleId) {
  return request({
    url: `${base}/assigned/${roleId}`,
    method: 'get',
  })
}

/**
 * 查询SysRoleMenu数据详细
 * @param {number} id - SysRoleMenu的唯一标识
 * @returns {Promise} - Axios请求的Promise对象
 */
export function getSysRoleMenu(id) {
  return request({
    url: `${base}/${id}`,
    method: 'get'
  })
}


/**
 * 新增SysRoleMenu数据
 * @param {Object} data - 新增的SysRoleMenu数据
 * @returns {Promise} - Axios请求的Promise对象
 */
export function addSysRoleMenu(data) {
  return request({
    url: `${base}`,
    method: 'post',
    data: data
  })
}

/**
 * 修改SysRoleMenu数据
 * @param {Object} data - 修改的SysRoleMenu数据
 * @returns {Promise} - Axios请求的Promise对象
 */
export function updateSysRoleMenu(data) {
  return request({
    url: `${base}`,
    method: 'put',
    data: data
  })
}

/**
 * 保存SysRoleMenu数据
 * @param {Object} menus - 修改的SysRoleMenu数据
 * @returns {Promise} - Axios请求的Promise对象
 */
export function saveSysRoleMenu(roleId, menus) {
  return request({
    url: `${base}/save/${roleId}`,
    method: 'post',
    data: menus
  })
}

/**
 * 删除SysRoleMenu数据
 * @param {number|number[]} ids - 要删除的SysRoleMenu的ID，支持单个ID或ID数组
 * @returns {Promise} - Axios请求的Promise对象
 */
export function delSysRoleMenu(ids) {
  return request({
    url: `${base}`,
    method: 'delete',
    data: ids
  })
}
